package br.com.ia.business;

import java.io.Serializable;
import java.util.List;

import br.com.enovar.trex.core.business.GenericBusiness;
import br.com.ia.model.Contato;
import br.com.ia.model.Empresa;

public class ContatoBusinessImpl extends GenericBusiness implements
		ContatoBusiness {

	private EmpresaBusiness empresaBusiness;
	
	public EmpresaBusiness getEmpresaBusiness() {
		return empresaBusiness;
	}

	public void setEmpresaBusiness(EmpresaBusiness empresaBusiness) {
		this.empresaBusiness = empresaBusiness;
	}

	public List<Contato> buscarContatoPorNomeCodEmpresa(String nome, Integer codEmpresa) {

		if(nome == null){
			nome = "";
		}
		
		nome = "%"+nome+"%";
		
		return getHibernateDao().executeQuery(	"br.com.ia.business.AgenteBusiness.buscarContatoPorNomeCodEmpresa", 
												new String[]{"nome","codEmpresa","codEmpresaAux"}, 
												new Object[]{nome, codEmpresa,codEmpresa});
		
		
	}

	public Serializable insert(Object o, Empresa empresa) {
		
		Contato contato = (Contato)o;
		
		if(empresa != null && empresa.getNome()!= null){
			empresaBusiness.insert(empresa);
			contato.setEmpresa(empresa);
		}
				
	
		return super.insert(contato);
	}

	public void update(Object o, Empresa empresa) {
		
		Contato contato = (Contato)o;
		
		if(empresa != null && empresa.getNome() != null){
			empresaBusiness.insert(empresa);
			contato.setEmpresa(empresa);
		}
		
		
		super.update(contato);
	}
	
	
}
